﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Y2015CS68APPS.OOP.SAMPLE
{
    class STUDENT
    {
        //1. Biến toàn cục - Datafield
        private  int RollNo;
        private string FullName;
        private double Mark;

        //2. Hàm khởi dựng - constructors
        /*ĐẶC ĐIỂM CỦA HÀM KHỞI DỰNG
         * +   Trùng tên với tên lớp đối tượng
         * +   Ko có kiểu trả về
         * +   Mặc định là public
         * +   Là hàm đc khởi chạy đầu tiên nhất khi đối tượng đc sinh ra
         * +   Khi lớp đối tượng ko định nghĩa bất kỳ hàm khởi dựng nào -->
         * khi tạo ra đối tượng no sẽ tự động sinh ra 1 hàm khởi dựng ko tham số.
         * +   Có 02 dạng:
         * - Ko tham số: Khởi tạo mặc định
         * - Có tham số: Khởi tạo theo tham số
         */
        public STUDENT()
        {
            //Khởi tạo mặc định
            RollNo = 1;
            FullName = "Mộng Thị A";
            Mark = 1;
        }

        public STUDENT(int pRollNo, string FullName, double Mark)
        {
            //Khởi tạo theo tham số
            //<Biến toàn cục> = <Tham số>;
            RollNo = pRollNo;
            this.FullName = FullName;
            this.Mark = Mark;
        }

        public int _RollNo
        {
            get { return RollNo; }
            set { RollNo = value; }
        }

        public string _FullName
        {
            get { return FullName; }
            set { FullName = value; }
        }

        public double _Mark { get; set; }
    }
}
